home *** CD-ROM | disk | FTP | other *** search
- # ARTemis の12×12ドット パターン文字列出力を
- # putpict(pict.c) 用データに変換する
- #
- #static char pic_selecton[] = {
- # 0xfe,
- # 12,12, COL_menuString,
- # 0x00,0x00,0x3f,0xc0,0x40,0x20,0x40,0x20,0x40,0x20,0x40,0x20,
- # 0x40,0x20,0x40,0x20,0x40,0x20,0x40,0x20,0x3f,0xc0,0x00,0x00,
- # 12,12, Black,
- # 0x00,0x20,0x00,0x40,0x00,0x80,0x01,0x00,0x03,0x00,0x16,0x00,
- # 0x0e,0x00,0x0c,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- # 0xff
- #};
-
- BEGIN {
- colmenu = sprintf("%04x", 19*1024 + 19*32 + 22)
- colmenu2 = sprintf("%04x", 24*1024 + 24*32 + 24)
- colmenulight = sprintf("%04x", 31*1024 + 31*32 + 31)
- colmenushade = sprintf("%04x", 12*1024 + 12*32 + 14)
- RS = ""
- FS = "[ \t\n]"
- }
-
- {
- printf("/* record %d: %d fields */\n", NR, NF)
- printf("static char pic_XXXX[] = {\n");
- printf("\t0xfe,\n");
- xbytes = int((12 + 7) / 8)
- for (i=0; i<8; i++)
- bit[i] = 2 ^ (7-i);
- for (i=0; i<xbytes*12; i++)
- {
- menu[i] = menu2[i] = menulight[i] = menushade[i] = 0;
- }
- for (y=0; y<12; y++)
- {
- for (x=0; x<12; x++)
- {
- field = $(1+12*y+x)
- idx = xbytes * y + int(x/8)
- if (field == colmenu)
- {
- menu[idx] += bit[x%8];
- }
- else if (field == colmenu2)
- {
- menu2[idx] += bit[x%8];
- }
- else if (field == colmenulight)
- {
- menulight[idx] += bit[x%8];
- }
- else if (field == colmenushade)
- {
- menushade[idx] += bit[x%8];
- }
- }
- }
- printf("\t12,12, COL_menu,\n\t");
- for (i=0; i<xbytes*12; i++)
- {
- printf("0x%02x,", menu[i]);
- if (i%12 == 11) printf("\n\t");
- }
- printf("12,12, COL_menu2,\n\t");
- for (i=0; i<xbytes*12; i++)
- {
- printf("0x%02x,", menu2[i]);
- if (i%12 == 11) printf("\n\t");
- }
- printf("12,12, COL_menuLight,\n\t");
- for (i=0; i<xbytes*12; i++)
- {
- printf("0x%02x,", menulight[i]);
- if (i%12 == 11) printf("\n\t");
- }
- printf("12,12, COL_menuShade,\n\t");
- for (i=0; i<xbytes*12; i++)
- {
- printf("0x%02x,", menushade[i]);
- if (i%12 == 11) printf("\n\t");
- }
- printf("0xff\n};\n\n");
- }
-